The present invention relates to the field of digital computer systems, and more specifically, to a method to perform comparisons between a first and a second vector of multiple binary numbers or characters stored in one processor register or at a memory location each.
One central component of a database is its search engine used to process queries. Especially the inner loop is comparing a search value against all entries of a column and checking for equal or within a range. Modern databases are storing their data in a compressed format. Due to the general data distribution, the data saved in a column will have different lengths based on the compression dictionary. Compressed data is saved in long words to maximize space/load/store utilization, with every compressed data element having the same size within this long word/or database page area. However, the search of such data is implemented in software and requires a large number of instructions, limiting the throughput.